import axios from 'axios'
import { Message, MessageBox } from 'element-ui'

axios.defaults.withCredentials = true;
// axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
// axios.defaults.headers.common["CAMERA_TOKEN"] = '80eeab1b7fb64e36a553829145a01624'


const service = axios.create({
  baseURL: process.env.VUE_APP_BASE_API, // api的base_url
  // timeout: 5000 // request timeout
})


// request interceptor
// service.interceptors.request.use(config => {
//   // Do something before request is sent
//   if (true) {
//     config.headers['Cookie'] = 'GUEST_LANGUAGE_ID=zh_CN; COOKIE_SUPPORT=true; JSESSIONID=ED59DEA4A4C6E2FEBCCDD4E120DF0E2E; CAMERA_TOKEN=09e7f99d9373441fab4b6174fd4b468a'
//   }
//   return config
// }, error => {
//   // Do something with request error
//   console.log(error) // for debug
//   Promise.reject(error)
// })


// service.transformRequest = [function (data) {
//   let ret = ''
//   for (let it in data) {
//     ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&'
//   }
//   return ret
// }]

service.interceptors.response.use(
  response => {
    // console.log(response)
    // console.log(response.data.code)
    // if(response.data.code !== '100000') {
    //   Message({
    //     message: response.data.msg,
    //     type: 'error',
    //     duration: 5 * 1000
    //   });
    //   return Promise.reject(response.data)
    // }else {
    //   return response
    // }
    return response
    
  },
  
  error => {
    // console.log(error)
    // console.log(error.response)
    if(error.response.status == 401) {
      // console.log('请求超时')
      // window.location.href = error.response.headers.location
      // window.location.reload()
      window.parent.location.href = document.referrer
      // console.log(document)
      // console.log(document.referrer)
      // console.log(window)
      // console.log(window.parent.location.href)
      // console.log(window.location.href)
    }

    // let errorCode = error.response.data.code
    
    // if(errorCode == 302) {

    // }
    // if(errorCode == 401) {
    //   MessageBox.confirm('你已被登出，可以取消继续留在该页面，或者重新登录', '确定登出', {
    //     confirmButtonText: '重新登录',
    //     cancelButtonText: '取消',
    //     type: 'warning'
    //   }).then(() => {
    //     store.dispatch('FedLogOut').then(() => {
    //       location.reload()// 为了重新实例化vue-router对象 避免bug
    //     })
    //   })
    // }else {
    //   Message({
    //     message: '请求失败，请重试',
    //     type: 'error',
    //     duration: 5 * 1000
    //   })
    // }

    return Promise.reject(error)
  })

export default service

